﻿using System.Collections.Generic;
using System.ComponentModel;
using System.Web.Services;
using KPIS.GERP.GFMS.IBLL;
using KPIS.GERP.GFMS.BLL;
using KPIS.GERP.GFMS.IDAL;
using KPIS.GERP.GFMS.DAL;
using KPIS.GERP.GFMS.MODEL;

namespace KPIS.GERP.GFMS.SERVICE
{
    /// <summary>
    /// Summary description for Service1
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class BGM_ProjectOperationExpense : System.Web.Services.WebService
    {
        IBLL_BGM_ProjectOperationExpense bll = new B_BGM_ProjectOperationExpense();
        IDAL_BGM_ProjectOperationExpense dal = new D_BGM_ProjectOperationExpense();
        D_BGM_ProjectOperationExpense d = new D_BGM_ProjectOperationExpense();

        [WebMethod]
        public List<M_BGM_ProjectOperationExpense> GetFull(string bgm_proj_oper_seq
            , string bgm_source_seq, string bgm_exp_grp_seq)
        {
            return (List<M_BGM_ProjectOperationExpense>)bll.GetFull(bgm_proj_oper_seq
                , bgm_source_seq, bgm_exp_grp_seq);
        }

        [WebMethod]
        public List<M_BGM_ProjectOperationExpense> GetProjectExpense(string bgm_proj_oper_seq
            , string bgm_proj_seq)
        {
            return (List<M_BGM_ProjectOperationExpense>)bll.GetProjectExpense(bgm_proj_oper_seq
                , bgm_proj_seq);
        }

        [WebMethod]
        public List<M_BGM_ProjectOperationExpense> GetProjectExpense2(int bgm_proj_oper_seq
            , int bgm_proj_seq, int bgm_proj_oper_edit_seq)
        {
            return (List<M_BGM_ProjectOperationExpense>)dal.GetProjectExpense(bgm_proj_oper_seq
                , bgm_proj_seq, bgm_proj_oper_edit_seq);
        }

        [WebMethod]
        public List<M_BGM_ProjectOperationExpense> GetList(string bgm_proj_oper_seq
            , string bgm_source_seq, string bgm_exp_grp_seq)
        {
            return (List<M_BGM_ProjectOperationExpense>)bll.GetList(bgm_proj_oper_seq
                , bgm_source_seq, bgm_exp_grp_seq);
        }

        [WebMethod]
        public List<M_BGM_ProjectOperationExpense> GetGroupBgmSource(string bgm_proj_oper_seq)
        {
            return (List<M_BGM_ProjectOperationExpense>)bll.GetGroupBgmSource(bgm_proj_oper_seq);
        }

        [WebMethod]
        public List<M_BGM_ProjectOperationExpense> GetGroupBgmExpGrp(string bgm_proj_oper_seq
            , string bgm_source_seq)
        {
            return (List<M_BGM_ProjectOperationExpense>)bll.GetGroupBgmExpGrp(bgm_proj_oper_seq
                , bgm_source_seq);
        }

        [WebMethod]
        public List<M_BGM_ProjectOperationExpense> GetGroupBgmExp(string bgm_proj_oper_seq
            , string bgm_source_seq, string bgm_exp_grp_seq)
        {
            return (List<M_BGM_ProjectOperationExpense>)bll.GetGroupBgmExp(bgm_proj_oper_seq
            , bgm_source_seq, bgm_exp_grp_seq);
        }

        [WebMethod]
        public M_BGM_ProjectOperationExpense GetInfo(string seq)
        {
            return bll.GetInfo(seq);
        }

        [WebMethod]
        public string Insert(M_BGM_ProjectOperationExpense info)
        {
            return bll.Insert(info);
        }

        [WebMethod]
        public void Update(M_BGM_ProjectOperationExpense info)
        {
            bll.Update(info);
        }

        [WebMethod]
        public void Delete(M_BGM_ProjectOperationExpense info)
        {
            bll.Delete(info);
        }

        //[WebMethod]
        //public string SelectRecentInsertedRoleSeq()
        //{
        //    return bll.SelectRecentInsertedRoleSeq();
        //}

        [WebMethod]
        public double GetRemainProject1(string bgm_proj_oper_seq, string bgm_source_seq, string bgm_exp_grp_seq)
        {
            return d.GetRemainProject(bgm_proj_oper_seq, bgm_source_seq, bgm_exp_grp_seq);
        }

        [WebMethod]
        public double GetRemainProject2(string bgm_proj_oper_exp_seq)
        {
            return d.GetRemainProject(bgm_proj_oper_exp_seq);
        }

        private void InitializeComponent()
        {

        }
    }
}
